home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso
/
x2ftp
/
msdos
/
hardware
/
cpu115
/
makefile
< prev
next >
Wrap
Makefile
|
1995-02-27
|
3KB
|
126 lines
# TMi0SDGL(tm) makefile Version 1.02
#
# Copyright(c) 1995 by B-coolWare. Written by Bobby Z.
#
# make targets:
#
# Asm - assembler version of identifier
# RPascal - real mode pascal version
# PPascal - protected mode pascal version
# C - C version
# P5Pas - P5Info pascal version
# P5C - P5Info C version
# test486 - test486 program
# clear - cleanup
# all - all of the above
# ------------------- Compilers
# Borland C++
CC = bcc
# Turbo C/C++
# CC = tcc
# Microsoft C/C++
# CC = cl
# Turbo Pascal
TPC = tpc
# Borland Pascal
# TPC = bpc /cd
# Linker
TLIB = tlib
# TLIB = lib
# ------------------- Memory Model
MODEL = l # must be uppercase letter for Microsoft C
ASMMODEL = __LARGE__ # must be __LARGE__ for Borland/Turbo Pascal
# ------------------- Paths
INCLUDE = I:\BORLANDC\INCLUDE
LIB = I:\BORLANDC\LIB
# ------------------- Compiler Options
# Borland C/C++, Turbo C/C++
CCOPTC = /c /m$(MODEL) /I$(INCLUDE) /Ox
CCOPTL = /m$(MODEL) /I$(INCLUDE) /L$(LIB) /Ox
CCOPTL2 =
# Microsoft C/C++
# Note that you should set LIB environment variable to point to your MSC\LIB
# directory.
# CCOPTC = /A$(MODEL) /Ox /c /FPi /I$(INCLUDE)
# CCOPTL = /A$(MODEL) /Ox /FPi /I$(INCLUDE)
# CCOPTL2 = /link /NOI /NOE
# ------------------- Implicit rules
.obj.com:
tlink /t/x $*
.asm.obj:
tasm /t/m/d$(ASMMODEL) $*
.c.obj:
$(CC) $(CCOPTC) $<
# -------------------- Explicit rules
all: Asm test486 RPascal PPascal C P5Pas P5C clear
# Assembler rules
Asm: cpu.com
cpu.com: cpu.obj
cpu.obj: cpu.asm
tasm /t/m/d__TINY__ $*
# Pascal rules
RPascal: cpu_rm.exe # Borland Pascal real mode
cpu_rm.exe: cpu_tp.obj speed_tp.obj smm.obj p5info.obj
$(TPC) /m cpu
del cpu_rm.exe
ren cpu.exe cpu_rm.exe
PPascal: cpu_pm.exe # Borland Pascal protected mode
cpu_pm.exe: cpu_tp.obp speed_tp.obp smm.obj p5info.obj
bpc /cp /m cpu
del cpu_pm.exe
ren cpu.exe cpu_pm.exe
cpu_tp.obj: cpu_hl.asm
tasm /t/m/d$(ASMMODEL) cpu_hl, cpu_tp
speed_tp.obj: cpuspeed.asm
tasm /t/m/d$(ASMMODEL) cpuspeed, speed_tp
cpu_tp.obp: cpu_hl.asm
tasm /t/m/d$(ASMMODEL)/d__DPMI__ cpu_hl, cpu_tp.obp
speed_tp.obp: cpuspeed.asm
tasm /t/m/d$(ASMMODEL)/d__DPMI__ cpuspeed, speed_tp.obp
P5Pas: p5info.exe # Turbo Pascal
p5info.exe: p5info.obj
$(TPC) /m $*
p5info.obj: p5info.asm
test486: test486.exe
test486.exe: RPascal model486.obj
$(TPC) test486
# C/C++ rules
C: cpuc.exe
cpuc.exe: cputype$(MODEL).lib
$(CC) $(CCOPTL) cpu.c cputype$(MODEL).lib $(CCOPTL2)
ren cpu.exe cpuc.exe
P5C: p5c.exe
p5c.exe: p5c.obj cputype$(MODEL).lib
$(CC) $(CCOPTL) p5c.obj cputype$(MODEL).lib $(CCOPTL2)
p5c.obj: p5info.c
$(CC) $(CCOPTC) -op5c.obj p5info.c
cputype$(MODEL).lib: cpu_hl.obj cpuspeed.obj smm.obj p5info.obj cputype.obj
$(TLIB) $* -+cpu_hl.obj -+cpuspeed.obj -+smm.obj -+p5info.obj -+cputype.obj
clear:
del *.ob?